www.gusucode.com > VC++ 小型会员积分管理系统-源码程序 > VC++ 小型会员积分管理系统-源码程序/code/AcPtsRecorder/listctrlex/ListViewEx.cpp
//Download by http://www.NewXing.com #include "StdAfx.h" #include ".\ListViewEx.h" IMPLEMENT_DYNCREATE(CListViewEx, CView) CListViewEx::CListViewEx(void) { } CListViewEx::~CListViewEx(void) { } BEGIN_MESSAGE_MAP(CListViewEx, CView) ON_NOTIFY(LVN_COLUMNCLICK, IDC_LIST_CTRL_INFO, OnColumnclickListTer) ON_WM_SIZE() END_MESSAGE_MAP() // CListViewEx 绘图 void CListViewEx::OnDraw(CDC* pDC) { CDocument* pDoc = GetDocument(); // TODO: 在此添加绘制代码 } // CListViewEx 诊断 #ifdef _DEBUG void CListViewEx::AssertValid() const { CView::AssertValid(); } void CListViewEx::Dump(CDumpContext& dc) const { CView::Dump(dc); } #endif //_DEBUG void CListViewEx::OnSize(UINT nType, int cx, int cy) { CView::OnSize(nType, cx, cy); if (m_ListCtrlEx.GetSafeHwnd()) { CRect rc; GetClientRect( rc ); m_ListCtrlEx.MoveWindow(rc.left,rc.top,rc.right,rc.bottom); } } BOOL CListViewEx::Create(LPCTSTR lpszClassName, LPCTSTR lpszWindowName, DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID, CCreateContext* pContext) { BOOL bResult = CView::Create(lpszClassName, lpszWindowName, dwStyle, rect, pParentWnd, nID, pContext); if (!m_ListCtrlEx.Create (WS_TABSTOP|WS_CHILD|WS_VISIBLE|LVS_REPORT, CRect(0,0,0,0), this, IDC_LIST_CTRL_INFO)) { TRACE0("Failed to create view for CListViewEx\r\n"); return FALSE; } // m_ListCtrlEx.ModifyStyleEx(0, WS_EX_CLIENTEDGE); m_ListCtrlEx.SetExtendedStyle(LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES|LVS_EX_TRACKSELECT); return bResult; } void CListViewEx::OnColumnclickListTer(NMHDR* pNMHDR, LRESULT* pResult) { NM_LISTVIEW* pNMListView = (NM_LISTVIEW*)pNMHDR; m_ListCtrlEx.SortList(pNMListView->iSubItem,m_ListCtrlEx.GetAscending()); *pResult = 0; }